#pragma once
#include "DVDPlayer.h"
#include "CDPlayer.h"
#include "VCRPlayer.h"
using namespace std;

class SamsungDVDPlayer : public DVDPlayer {
public:
	SamsungDVDPlayer(MediaCenter* md) : DVDPlayer(md) {}
	virtual ~SamsungDVDPlayer() {}

	virtual void start() {
		if (PlayerChanged("start")) {
			cout << "Samsung DVD player started playing!" << endl;
		} else {
			cout << "Couldn't start Samsung DVD Player!" << endl;
		}
	}

	virtual void stop() {
		if (PlayerChanged("stop")) {
			cout << "Samsung DVD player stopped playing!" << endl;
		} else {
			cout << "Couldn't stop Samsung DVD Player!" << endl;
		}
	}

	virtual void forward() {
		if (PlayerChanged("forward")) {
			cout << "Samsung DVD player forwarded!" << endl;
		} else {
			cout << "Couldn't forward Samsung DVD Player!" << endl;
		}
	}

	virtual void rewind() {
		if (PlayerChanged("rewind")) {
			cout << "Samsung DVD player rewound!" << endl;
		} else {
			cout << "Couldn't rewind Samsung DVD Player!" << endl;
		}
	}
};

class SamsungCDPlayer : public CDPlayer {
public:
	SamsungCDPlayer(MediaCenter* md) : CDPlayer(md) {}
	virtual ~SamsungCDPlayer() {}
	
	virtual void start() {
		if (PlayerChanged("start")) {
			cout << "Samsung CD player started playing!" << endl;
		} else {
			cout << "Couldn't start Samsung CD Player!" << endl;
		}
	}

	virtual void stop() {
		if (PlayerChanged("stop")) {
			cout << "Samsung CD player stopped playing!" << endl;
		} else {
			cout << "Couldn't stop Samsung CD Player!" << endl;
		}
	}

	virtual void forward() {
		if (PlayerChanged("forward")) {
			cout << "Samsung CD player forwarded!" << endl;
		} else {
			cout << "Couldn't forward Samsung CD Player!" << endl;
		}
	}

	virtual void rewind() {
		if (PlayerChanged("rewind")) {
			cout << "Samsung CD player rewound!" << endl;
		} else {
			cout << "Couldn't rewind Samsung CD Player!" << endl;
		}
	}
};

class SamsungVCRPlayer : public VCRPlayer {
public:
	SamsungVCRPlayer(MediaCenter* md) : VCRPlayer(md) {}
	virtual ~SamsungVCRPlayer() {}
	
	virtual void start() {
		if (PlayerChanged("start")) {
			cout << "Samsung VCR player started playing!" << endl;
		} else {
			cout << "Couldn't start Samsung VCR Player!" << endl;
		}
	}

	virtual void stop() {
		if (PlayerChanged("stop")) {
			cout << "Samsung VCR player stopped playing!" << endl;
		} else {
			cout << "Couldn't stop Samsung VCR Player!" << endl;
		}
	}

	virtual void forward() {
		if (PlayerChanged("forward")) {
			cout << "Samsung VCR player forwarded!" << endl;
		} else {
			cout << "Couldn't forward Samsung VCR Player!" << endl;
		}
	}

	virtual void rewind() {
		if (PlayerChanged("rewind")) {
			cout << "Samsung VCR player rewound!" << endl;
		} else {
			cout << "Couldn't rewind Samsung VCR Player!" << endl;
		}
	}
};